package com.smt.modules.bus.vo;

import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import lombok.Data;
import com.alibaba.fastjson.annotation.JSONField;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import com.smt.common.base.BaseVo;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.util.Date;

/**
 * 文档管理表
 * 
 * @author murong
 * @email 981620741@qq.com
 * @date 2018-09-29 15:37:09
 */
@Data
@TableName("bus_document")
@ApiModel(value="文档管理表",description="文档管理表")
public class DocumentVo extends BaseVo {
	private static final long serialVersionUID = 1L;

		/**
    * 文件夹主键id
    */
		@TableId
		@ApiModelProperty(value="文件夹主键id",name="id")
	private Long id;
		/**
    * 从属的父辈id
    */
			@ApiModelProperty(value="从属的父辈id",name="parentId")
			@NotNull(message = "请输入父辈id！")
	private Long parentId;
		/**
    * 所属成员id
    */
			@ApiModelProperty(value="所属成员id",name="memberId",hidden = true)
	private Long memberId;
		/**
    * 所属项目工程id
    */
			@ApiModelProperty(value="所属项目工程id",name="projectId")
			@NotNull(message = "项目id不能为空！")
	private Long projectId;
		/**
    * 文件或目录名称
    */
			@ApiModelProperty(value="文件或目录名称",name="name")
	private String name;
		/**
    * 类型（0:工作文档 1:我的文件）
    */
			@ApiModelProperty(value="类型（0:工作文档 1:我的文件）",name="type")
	private Integer type;
		/**
    * 上传的文件url
    */
			@ApiModelProperty(value="上传的文件url",name="fileUrl")
	private String fileUrl;
		/**
    * 上传的文件大小(单位M)
    */
			@ApiModelProperty(value="上传的文件大小(单位M)",name="fileSize")
	private Double fileSize;
		/**
    * 创建日期
    */
			@ApiModelProperty(value="创建日期",name="createTime",hidden = true)
	private Date createTime;
		/**
    * 更新日期
    */
			@ApiModelProperty(value="更新日期",name="updateTime",hidden = true)
	private Date updateTime;
		/**
    * 操作状态（0驳回; 1 通过 ;2 删除）
    */
			@ApiModelProperty(value="操作状态（0驳回; 1 通过 ;2 删除）",name="status",hidden = true)
	private Integer status;

	/**
	 * 判断文件夹或者文件
	 */
	@ApiModelProperty(value="判断文件夹或者文件",name="statusType")
	private Integer statusType;
}
